package jsyf.oa.entity.crm;

import com.alibaba.fastjson.JSONObject;
import jsyf.oa.ientity.BaseEntity;

import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.List;

/**
 * Created by WHH-PC on 2017/12/26.
 */
@Entity
@Table(name = "T_CRM_EXIHIBITION_CUSTOMER_INFO", schema = "oa", catalog = "")
public class ExhibitionCustomerInfoEntity extends BaseEntity {

    private String id;

    private String customerId;

    private String exhibitionId;

    private String salerName;

    private Integer depositStatus;

    private Double deposit;

    private Integer travelModel;

    private String arrivalsTime;

    private Integer participationNum;

    private Integer stayNum;

    private String createUserId;

    private String customerName;

    private String customerTel;

    private String visitContent;

    private Integer trackStatus;

    private List<ExhibitionIntentionEntity> intentionModelList;



    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getCustomerId() {
        return customerId;
    }

    public void setCustomerId(String customerId) {
        this.customerId = customerId;
    }

    public String getExhibitionId() {
        return exhibitionId;
    }

    public void setExhibitionId(String exhibitionId) {
        this.exhibitionId = exhibitionId;
    }

    public String getSalerName() {
        return salerName;
    }

    public void setSalerName(String salerName) {
        this.salerName = salerName;
    }

    public Integer getDepositStatus() {
        return depositStatus;
    }

    public void setDepositStatus(Integer depositStatus) {
        this.depositStatus = depositStatus;
    }

    public Double getDeposit() {
        return deposit;
    }

    public void setDeposit(Double deposit) {
        this.deposit = deposit;
    }

    public Integer getTravelModel() {
        return travelModel;
    }

    public void setTravelModel(Integer travelModel) {
        this.travelModel = travelModel;
    }

    public String getArrivalsTime() {
        return arrivalsTime;
    }

    public void setArrivalsTime(String arrivalsTime) {
        this.arrivalsTime = arrivalsTime;
    }

    public Integer getParticipationNum() {
        return participationNum;
    }

    public void setParticipationNum(Integer participationNum) {
        this.participationNum = participationNum;
    }

    public Integer getStayNum() {
        return stayNum;
    }

    public void setStayNum(Integer stayNum) {
        this.stayNum = stayNum;
    }

    public String getCreateUserId() {
        return createUserId;
    }

    public void setCreateUserId(String createUserId) {
        this.createUserId = createUserId;
    }

    public String getCustomerName() {
        return customerName;
    }

    public void setCustomerName(String customerName) {
        this.customerName = customerName;
    }

    public String getCustomerTel() {
        return customerTel;
    }

    public void setCustomerTel(String customerTel) {
        this.customerTel = customerTel;
    }

    public String getVisitContent() {
        return visitContent;
    }

    public void setVisitContent(String visitContent) {
        this.visitContent = visitContent;
    }

    public Integer getTrackStatus() {
        return trackStatus;
    }

    public void setTrackStatus(Integer trackStatus) {
        this.trackStatus = trackStatus;
    }

    public List<ExhibitionIntentionEntity> getIntentionModelList() {
        return intentionModelList;
    }

    public void setIntentionModelList(List<ExhibitionIntentionEntity> intentionModelList) {
        this.intentionModelList = intentionModelList;
    }

    @Override
    public JSONObject getJSONObject() {
        JSONObject obj = new JSONObject();
        obj.put("ID", getId());
        obj.put("CUSTOMER_ID", getCustomerId());
        obj.put("EXHIBITION_ID", getExhibitionId());
        obj.put("SALER_NAME", getSalerName());
        obj.put("DEPOSIT_STATUS", getDepositStatus());
        obj.put("DEPOSIT", getDeposit());
        obj.put("TRAVEL_MODEL", getTravelModel());
        obj.put("ARRIVALS_TIME", getArrivalsTime());
        obj.put("PARTICIPATION_NUM", getParticipationNum());
        obj.put("STAY_NUM", getStayNum());
        obj.put("CREATE_USER_ID", getCreateUserId());
        obj.put("TRACK_STATUS", getTrackStatus());
        return obj;
    }
    @Override
    public String getTableName() {
        return "T_CRM_EXHIBITION_CUSTOMER_INFO";
    }

    @Override
    public JSONObject getJSONColumns() {
        JSONObject obj = new JSONObject();
        obj.put("ID", "id");
        obj.put("CUSTOMER_ID", "customerId");
        obj.put("EXHIBITION_ID", "exhibitionId");
        obj.put("SALER_NAME", "salerName");
        obj.put("DEPOSIT_STATUS", "depositStatus");
        obj.put("DEPOSIT", "deposit");
        obj.put("TRAVEL_MODEL", "travelModel");
        obj.put("ARRIVALS_TIME", "arrivalsTime");
        obj.put("PARTICIPATION_NUM", "participationNum");
        obj.put("STAY_NUM", "stayNum");
        obj.put("CREATE_USER_ID", "createUserId");
        obj.put("TRACK_STATUS", "trackStatus");
        return obj;
    }
}
